home *** CD-ROM | disk | FTP | other *** search
-
- ================================================================
- Title : Doom Mouse Spinner (DMS) v0.12 beta
- Filename : DMS.COM
- Authors : Tom Klok and Dave 'Zoid' Kirsch
- Email Address : a344@mindlink.bc.ca
-
- Description : Ever had the problem of a monster or
- deathmatch opponent sneaking up behind
- you? Ever needed to turn around *now*?
- With DMS, you can rotate your player
- 180 degrees with a click of the mouse!
-
- Release note : This is a *BETA* release. DMS has been
- tested with Logitech 3-button and
- Microsoft 2-button mice. It should work
- with others without problems. I don't
- know what it would do with a CyberMan.
-
- Construction : TASM 3.1, TLINK 5.1
-
- ================================================================
-
-
- What it is
- ~~~~~~~~~~
- DMS is a tiny TSR (384 bytes resident) that intercepts Doom's
- calls to the mouse driver. By clicking the mouse buttons that you
- define, it will instantly turn you 180 degrees -- facing the opposite
- direction.
-
- It supports mouse "chords". For example, if you have a 2-button
- mouse you can set it up to spin you only when you press the left and
- right mouse button at the same time. 3-button mice permit even more
- combinations. I prefer the Middle+Right button chord on my Logitech.
-
-
- Does it work for Deathmatch?
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- You're not very nice, are you? :)
-
-
- How it works
- ~~~~~~~~~~~~
- Doom uses two standard Mouse API services:
-
- function AX=0003h - mouse button status
- function AX=000Bh - mouse delta mickey counts
-
- A 'mickey' is the smallest unit of mouse movement... sort of like
- a pixel on the screen. Every time Doom requests the new delta mickey
- counts, the mouse driver returns the number of mickeys (X and Y,
- positive and negative) the mouse has moved since the last request.
-
- DMS hooks interrupt 33h, the mouse driver interrupt, and watches
- for those two function requests. Whenever Doom asks for the latest
- button status, DMS passes the request on to the mouse driver and then
- checks to see if the special button(s) have been pressed. If they
- have, it masks them out (tells Doom they never happened) and adds 180
- degrees to the X-axis mickeys the next time Doom asks for them.
-
- DMS was written in assembly language for small size. Source code
- is included.
-
-
- How to install it
- ~~~~~~~~~~~~~~~~~
- Put DMS.COM in your Doom directory, or some other directory in your
- DOS path. Simply type 'DMS' to load it. Be sure you load it AFTER your
- mouse driver, not before, or it won't work.
-
- 'dms -?' or 'dms -h' will display some simple usage help. To
- configure your own button preferences, run DMS with a parameter
- indicating which buttons you want. The default is the right mouse
- button. For example, if you prefer the Left+Right buttons to spin
- you, enter 'dms -lr'. Since I like Middle and Right, I use 'dms -mr'.
-
- You can change your button definitions by running DMS again. It
- will detect that it is already loaded and just update the buttons.
-
- DMS may be loaded into conventional memory, or high memory (UMB's).
- There really isn't any point in loading it high, however, as Doom doesn't
- need much conventional memory and DMS only consumes 384 bytes resident.
-
-
- How to uninstall it
- ~~~~~~~~~~~~~~~~~~~
- DMS doesn't include software to release itself. Sorry. Go
- download the MARK/RELEASE tools, or just reboot after you're done.
-
-
- Legal stuff
- ~~~~~~~~~~~
- DMS is Copyright (c) 1994 Tom Klok and Dave Kirsch. Permission
- is granted to distribute it via any media (Internet, BBS, CDROM, etc)
- as long as full attributions are maintained and the source code is
- included. If you modify the source and build something new with it,
- please have the courtesy of leaving our names on it as well and
- mailing us a copy. If you are a CDROM producer and include this
- package with your distribution, we expect a free copy of your disk as
- compensation. Write to Tom Klok at a344@mindlink.bc.ca to notify
- us and get a shipping address.
-
- -- tk 11Aug94Th
-
-